#pragma once

#include "CmdHandler3.h"
#include "Arc2D.h"

class Scene;
class CDblPoint;

class Arc2DHandler : public CmdHandler3
{
	Q_OBJECT
public:
	Q_INVOKABLE Arc2DHandler();
	~Arc2DHandler();

	virtual void input(const QVariant& data, const QString& rawInput, CommandSource cs) override;
	void drawFinished(Scene* scene);
	CDblPoint getPtOnArc(const osg::Vec3d& Pt ,const osg::Vec3d & center);
private:
	std::shared_ptr<Arc2D> m_arc;
	osg::Vec3d m_startPt;
	osg::Vec3d m_secondPt;
	osg::Vec3d m_endPt;
};
